package fr.generali.accueilclient.gwt.client.view;

import com.google.gwt.user.client.ui.IsWidget;

import fr.generali.accueilclient.gwt.client.presenter.ViewPresenter;

/**
 * Interface marker pour toutes les vues de l'application.
 */
public interface View<P extends ViewPresenter<?>> extends IsWidget {

	/**
	 * Permet de ré-initialiser une vue. Utile dans le cas où une vue est un singleton.
	 * 
	 * Cette méthode est appelée par son presenter lorsque celui-ci s'apprête à l'utiliser.
	 */
	void reset();
	
	void setPresenter(P presenter);
	
	P getPresenter();
}
